/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package servlets;
 
import beans.Dao;
import beans.Validator;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
 
public class Login extends HttpServlet {
 
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        /* En este proyecto; este servlet no recibe ni debe recibir nada por GET, 
         * asi que si se lleva a entrar al servelt
         * usando el metodo GET solamente redireccion al index.jsp
         */
         response.sendRedirect("index.jsp");
         
    }
 
   
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        HttpSession respuesta = request.getSession(true);
        PrintWriter out = response.getWriter();
        String email = request.getParameter("email");
        String password = request.getParameter("password");
        Validator v = new Validator();
        Dao d = new Dao();
        
        //campos vacios
        if (email.isEmpty() || password.isEmpty()) {
            respuesta.setAttribute("error", "Hay campos vacios");
            response.sendRedirect("login.jsp");

        } else {
            respuesta.removeAttribute("error");
                        try {
                            d.conectar();
                            if (d.isAcountMExists(email, password)||d.isAcountOExists(email, password)) {
                                
                               String NombreUsuario;
                                //Significa que la cuenta si existe
                                //OBTENGO EL NOMBRE DEL USUARIO Y LO GUARDO EN UNA SESION
                                if (d.isAcountMExists(email, password)){
                                     NombreUsuario = d.getNameMByEmail(email);
                                }else{
                                     NombreUsuario = d.getNameOByEmail(email);
                                }
                                    
                                respuesta.setAttribute("sessionNombre", NombreUsuario);
                                respuesta.setAttribute("sessionEmail", email);
                                response.sendRedirect("index.jsp");
                                d.desconectar();
                        }    
                        } catch (Exception e) { out.println("Ocurrio la sig exception: " +e); }
        }
                                

    }
}